]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
PopupMenuManager: Fix child menus
authorFlorian Müllner <fmuellner@gnome.org>
Tue, 14 May 2013 16:55:08 +0000 (18:55 +0200)
committerFlorian Müllner <fmuellner@gnome.org>
Tue, 14 May 2013 17:08:00 +0000 (19:08 +0200)
Since commit c84dc6254d2d65c, popup menus are closed automatically
when another menu opens (to catch the case where a menu is opened
by keyboard shortcut, which wasn't handled before). However in the
case of child menus, both child and parent are expected to be visible,
so handle this case explicitly.

https://bugzilla.gnome.org/show_bug.cgi?id=699678

js/ui/popupMenu.js

index c3ac653f2efccdf6bc8a5b9f8b9fc47797d5d663..6f76a27f21e88a458c8465c064562ba092f35dd2 100644 (file)
@@ -1875,7 +1875,7 @@ const PopupMenuManager = new Lang.Class({
 
     _onMenuOpenState: function(menu, open) {
         if (open) {
-            if (this.activeMenu)
+            if (this.activeMenu && !this.activeMenu.isChildMenu(menu))
                 this.activeMenu.close(BoxPointer.PopupAnimation.FADE);
             this._grabHelper.grab({ actor: menu.actor, modal: true, focus: menu.sourceActor,
                                     onUngrab: Lang.bind(this, this._closeMenu, menu) });